﻿
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Threading.Tasks;
using WalkingTec.Mvvm.Core;
using WalkingTec.Mvvm.Core.Extensions;
using nERP.Model.Bas;
using nERP.Model;

namespace nERP.ViewModel.Bas.CustomerVMs
{
    public partial class CustomerTemplateVM : BaseTemplateVM
    {
        
        [Display(Name = "_Model._Customer._CustomerCode")]
        public ExcelPropety CustomerCode_Excel = ExcelPropety.CreateProperty<Customer>(x => x.CustomerCode);
        [Display(Name = "_Model._Customer._CustomerName")]
        public ExcelPropety CustomerName_Excel = ExcelPropety.CreateProperty<Customer>(x => x.CustomerName);
        [Display(Name = "_Model._Customer._ContactPerson")]
        public ExcelPropety ContactPerson_Excel = ExcelPropety.CreateProperty<Customer>(x => x.ContactPerson);
        [Display(Name = "_Model._Customer._PhoneNumber")]
        public ExcelPropety PhoneNumber_Excel = ExcelPropety.CreateProperty<Customer>(x => x.PhoneNumber);
        [Display(Name = "_Model._Customer._Email")]
        public ExcelPropety Email_Excel = ExcelPropety.CreateProperty<Customer>(x => x.Email);
        [Display(Name = "_Model._Customer._Faxing")]
        public ExcelPropety Faxing_Excel = ExcelPropety.CreateProperty<Customer>(x => x.Faxing);
        [Display(Name = "_Model._Customer._BeginCollect")]
        public ExcelPropety BeginCollect_Excel = ExcelPropety.CreateProperty<Customer>(x => x.BeginCollect);
        [Display(Name = "_Model._Customer._EndCollect")]
        public ExcelPropety EndCollect_Excel = ExcelPropety.CreateProperty<Customer>(x => x.EndCollect);
        [Display(Name = "_Model._Customer._TaxtRate")]
        public ExcelPropety TaxtRate_Excel = ExcelPropety.CreateProperty<Customer>(x => x.TaxtRate);
        [Display(Name = "_Model._Customer._Address")]
        public ExcelPropety Address_Excel = ExcelPropety.CreateProperty<Customer>(x => x.Address);
        [Display(Name = "_Model._Customer._Bank")]
        public ExcelPropety Bank_Excel = ExcelPropety.CreateProperty<Customer>(x => x.Bank);
        [Display(Name = "_Model._Customer._TaxpayerNumber")]
        public ExcelPropety TaxpayerNumber_Excel = ExcelPropety.CreateProperty<Customer>(x => x.TaxpayerNumber);
        [Display(Name = "_Model._Customer._BankAccount")]
        public ExcelPropety BankAccount_Excel = ExcelPropety.CreateProperty<Customer>(x => x.BankAccount);
        [Display(Name = "_Model._Customer._LandlinePhone")]
        public ExcelPropety LandlinePhone_Excel = ExcelPropety.CreateProperty<Customer>(x => x.LandlinePhone);
        [Display(Name = "_Model._Customer._Remark")]
        public ExcelPropety Remark_Excel = ExcelPropety.CreateProperty<Customer>(x => x.Remark);
        //[Display(Name = "_Model._Customer._CreateTime")]
        //public ExcelPropety CreateTime_Excel = ExcelPropety.CreateProperty<Customer>(x => x.CreateTime, true);
        //[Display(Name = "_Model._Customer._UpdateTime")]
        //public ExcelPropety UpdateTime_Excel = ExcelPropety.CreateProperty<Customer>(x => x.UpdateTime, true);
        //[Display(Name = "_Model._Customer._CreateBy")]
        //public ExcelPropety CreateBy_Excel = ExcelPropety.CreateProperty<Customer>(x => x.CreateBy);
        //[Display(Name = "_Model._Customer._UpdateBy")]
        //public ExcelPropety UpdateBy_Excel = ExcelPropety.CreateProperty<Customer>(x => x.UpdateBy);
        //[Display(Name = "_Model._Customer._IsValid")]
        //public ExcelPropety IsValid_Excel = ExcelPropety.CreateProperty<Customer>(x => x.IsValid);
        //[Display(Name = "_Model._Customer._TenantCode")]
        //public ExcelPropety TenantCode_Excel = ExcelPropety.CreateProperty<Customer>(x => x.TenantCode);

	    protected override void InitVM()
        {
            
        }

    }

    public class CustomerImportVM : BaseImportVM<CustomerTemplateVM, Customer>
    {
            //import

    }

}